﻿using ScottPlot;

namespace UtilZ.Dotnet.ScottPlotEx
{
    /// <summary>
    /// 可选项参数
    /// </summary>
    public class WaterfallPlotOptions
    {
        private static WaterfallPlotOptions _default = null;
        /// <summary>
        /// 默认可选项参数
        /// </summary>
        public static WaterfallPlotOptions Default
        {
            get
            {
                if (_default == null)
                {
                    _default = new WaterfallPlotOptions();
                }

                return _default;
            }
        }



        /// <summary>
        /// 构造函数初始化
        /// </summary>
        public WaterfallPlotOptions()
        {

        }

        /// <summary>
        /// 对齐选项参数
        /// </summary>
        public PlotAlignedExtentOptions AlignedExtentOptions { get; set; } = null;

        /// <summary>
        /// 垂直翻转[true:翻转;false:不翻转],水平方向移动时有效
        /// </summary>
        public bool FlipVertically { get; set; } = false;

        /// <summary>
        /// 水平翻转[true:翻转;false:不翻转],垂直方向移动时有效
        /// </summary>
        public bool FlipHorizontally { get; set; } = false;

        /// <summary>
        /// If true, pixels in the final image will be interpolated to give the heatmap a smooth appearance.
        /// If false, the heatmap will appear as individual rectangles with sharp edges.
        /// </summary>
        public bool Smooth { get; set; } = false;

        /// <summary>
        /// Nan值点的颜色
        /// </summary>
        public ScottPlot.Color NaNCellColor { get; set; } = Colors.Transparent;

        /// <summary>
        /// 是否启用原始数据缓存，缓存后才可通过获取指定区域的值
        /// </summary>
        public bool CacheOriginValue { get; set; } = false;

    }
}
